#include "connect.hpp"

// int main()
// {
//     // 申请共享内存
//     int shmid = Getshm();
//     // 链接共享内存到对应的共享区，
//     char *shmaddr = (char*)shmat(shmid, nullptr, 0);

//     //在这里进行通信
//     while(1)
//     {
//         cout<<"write something : ";
//         //向共享内存中输入数据
//         string str;
//         cin>>str;
//         snprintf(shmaddr,str.size()+1,"%s",str.c_str());
//     }


//     // 记得要将链接的共享内存和共享区去链接
//     shmdt(shmaddr);

//     return 0;
// }

int main()
{
    // 申请共享内存
    int shmid = Getshm();
    // 链接共享内存到对应的共享区，
    char *shmaddr = (char*)shmat(shmid, nullptr, 0);
    int fd = open(FIFO_FILE,O_WRONLY);
    if(fd == -1)
    {
        log(FATAL,"open init fail %d : %s",errno,strerror(errno));
        exit(FIFO_OPEN_ERR);
    }

    //在这里进行通信
    while(1)
    {
        cout<<"write something : ";
        //向共享内存中输入数据
        string str;
        cin>>str;
        snprintf(shmaddr,str.size()+1,"%s",str.c_str());
        write(fd,"6",1);
    }


    // 记得要将链接的共享内存和共享区去链接
    shmdt(shmaddr);

    return 0;
}